home *** CD-ROM | disk | FTP | other *** search
/ Experimental BBS Explossion 3 / Experimental BBS Explossion III.iso / games / nhak_src.zip / AMICONF.H < prev    next >
C/C++ Source or Header  |  1993-03-16  |  3KB  |  114 lines

  1. /*    SCCS Id: @(#)amiconf.h  3.0     89/09/04
  2. /* NetHack may be freely redistributed.  See license for details. */
  3.  
  4. #ifndef AMICONF_H
  5. #define AMICONF_H
  6.  
  7. #undef abs        /* avoid using macro form of abs */
  8. #undef min        /* this gets redefined */
  9. #undef max        /* this gets redefined */
  10.  
  11. #include <time.h>    /* get time_t defined before use! */
  12.  
  13. #ifdef LATTICE        /* since Lattice can prevent re-inclusion */
  14. #include <stdlib.h>    /* and other things, including builtins */
  15. #if (__VERSION__==5) && (__REVISION__<=4)
  16.     /* This enables a fix in src/mondata.c needed to bypass a compiler
  17.     bug.  If you need it and don't have it you will get monsndx panics and
  18.     monsters that change type when they die and become corpses.
  19.     If you don't need it and do have it, even wierder things will happen. */
  20. #   define LATTICE_504_BUG
  21. #endif
  22. #endif
  23.  
  24. #ifdef LATTICE        /* Lattice defines DEBUG when you use -d1 which */
  25. # ifdef DEBUG        /* we need for useful SnapShots, but DEBUG is   */
  26. #  undef DEBUG        /* used in several files to turn on things we   */
  27. # endif            /* don't want (e.g. eat.c), so we get rid of    */
  28. #endif            /* DEBUG unless asked for in a particular file  */
  29.  
  30. typedef long off_t;
  31.  
  32. #define MSDOS        /* must be defined to allow some inclusions */
  33.  
  34. #define O_BINARY    0
  35.  
  36. #define DGK        /* You'll probably want this; provides assistance
  37.              * for typical personal computer configurations
  38.              */
  39. #define RANDOM
  40.  
  41. extern void FDECL(exit, (int));
  42. extern void NDECL(CleanUp);
  43. extern void FDECL(Abort, (long));
  44. extern int NDECL(getpid);
  45. extern char *FDECL(CopyFile, (const char *, const char *));
  46. extern int NDECL(WindowGetchar);
  47. extern void FDECL(WindowPutchar, (CHAR_P));
  48. extern void FDECL(WindowPuts, (const char *));
  49. extern void FDECL(WindowFPuts, (const char *));
  50. extern void VDECL(WindowPrintf, (const char *, ...));
  51. extern void FDECL(WindowFlush, (void));
  52.  
  53. #ifndef MSDOS_H
  54. #include "msdos.h"
  55. #endif
  56. #ifndef PCCONF_H
  57. #include "pcconf.h"     /* remainder of stuff is almost same as the PC */
  58. #endif
  59.  
  60. #ifndef LATTICE
  61. #define memcpy(dest, source, size)  movmem(source, dest, size)
  62. #endif
  63. #define remove(x)       unlink(x)
  64.  
  65. #ifdef LATTICE
  66. #define FFLUSH(fp) _flsbf(-1, fp)    /* Was fflush */
  67. #endif
  68.  
  69. #ifdef AZTEC_C
  70. #define FFLUSH(fp) flsh_(fp, -1)     /* Was fflush */
  71. extern FILE *FDECL(freopen, (const char *, const char *, FILE *));
  72. extern char *FDECL(gets, (char *));
  73. #endif
  74.  
  75. /* Use Window functions if not in makedefs.c or lev_lex.c */
  76.  
  77. #if !defined(MAKEDEFS_C) && !defined(LEV_LEX_C)
  78.  
  79. #define fopen        fopenp    /* Open most text files according to PATH */
  80.  
  81. #undef getchar
  82. #undef putchar
  83. #undef fflush
  84. # ifdef LATTICE
  85. #undef printf
  86. # endif
  87.  
  88. #define getchar()   WindowGetchar()
  89. #define putchar(c)  WindowPutchar(c)
  90. #define puts(s)     WindowPuts(s)
  91. #define fputs(s,f)  WindowFPuts(s)
  92. #define printf        WindowPrintf
  93. #define fflush(fp)  WindowFlush()
  94.  
  95. #define xputs        WindowFPuts
  96. #define xputc        WindowPutchar
  97.  
  98. #endif
  99.  
  100. /*
  101.  *  Configurable Amiga options:
  102.  */
  103.  
  104. #define TEXTCOLOR        /* Use colored monsters and objects */
  105. #define HACKFONT        /* Use special hack.font */
  106. #define SHELL            /* Have a shell escape command (!) */
  107. #define MAIL            /* Get mail at unexpected occasions */
  108. #define AMIGA_WBENCH        /* Icon support */
  109. #define DEFAULT_ICON "NetHack:default.icon"    /* private icon for above */
  110. #define AMIFLUSH        /* toss typeahead (select flush in .cnf) */
  111. #undef    TERMLIB
  112.  
  113. #endif /* AMICONF_H */
  114.